<?php
/**
 * CRUD de noticias
 *
 * @author Vinicius Rodrigues (viniciusmr3@gmail.com)
 * @since 22/11/2012
 */
//necessário para todas as páginas do admin (facilitador)
include("defaultAdmin.php");
require_once(PASTA_DAO."Voucher.class.php");
require_once(PASTA_DAO."Transacao.class.php");

//verificação se o usuário esta logado, cado contrário, este será redirecionado para o login.
if($objUsrSession->getIdAdministrador() == 0){
	HttpUtil::vaiPara("login.php?msg=1");
}
if(!isset($_GET["id"])){
	$id = "";
}else{
	$id = (int)$_GET["id"];
}
if(!is_numeric($id) || $id == 0 || $id==""){
	$id = null;
}
$objVoucher = new Voucher();
if(!isset($_GET["a"]))
$_GET["a"] = "";
switch ($_GET["a"]){
	case 'excluir':
		try{
			$objTransacao = new Transacao();
			$idTrans = $objTransacao->getIdTransacByVoucher($id);
			$arrTrans = Utf8Parsers::arrayUtf8Encode($objTransacao->buscaCampos($idTrans));
			//Tipo Transação: \n - 1 Retirada de Premios/Resgate\n - 2 Estorno de Pontos - 3 cancelar
			$arrTrans["tipo_transacao"] = 3;
			
			if($arrTrans["id_venda"] == "")
				unset($arrTrans["id_venda"]);
			
			$objTransacao->alterar($idTrans,$arrTrans,null);
			
			$arrCampos = Utf8Parsers::arrayUtf8Encode($objVoucher->buscaCampos($id));
			//1 - Emitido\n2 - Utilizado\n3 - Anulado
			$arrCampos["status_voucher"] = "3";
				
			$objVoucher->alterar($id,$arrCampos,null);
			
			HttpUtil::vaiPara("ConsultarVouchersEmitidos.php?msg=4");
		}catch(CustonException $e){
			throw new CustonException("Imppossível deletar o dado da tabela ");
		}
		break;
	case 'lista':
	default:
		if(isset($_GET["p"]) && $_GET["p"]!="" && is_numeric($_GET["p"])){
			$pagAtual = (int)$_GET["p"];
		}else{
			$pagAtual = 0;
		}
		$objCtrlSmarty->assign("pagAtual", $pagAtual);
		$objCtrlSmarty->assign("EXIBIR_ACOES", "N");
		$objCtrlSmarty->assign("EXIBIR_DELETAR", "S");
		$objCtrlSmarty->assign("CONTEUDO_ADMIN",$objCtrlSmarty->fetch(TPLS_FILE."admin/listaVouchersEmitidos.tpl"));
		break;
}

//definição da estrutura do admin <cabecalho, corpo e rodape>
$objCtrlSmarty->assign("ESTRUTURA",$objCtrlSmarty->fetch(TPLS_FILE."admin/adminEstrutura.tpl"));

//ultima coisa que deve ter no arquivo, serve para imprimir a tela
$objCtrlSmarty->display(TPLS_FILE."index.tpl");
?>